﻿#ifndef PST_THREEDSURFACEPLOTSELECTORDIALOG_H
#define PST_THREEDSURFACEPLOTSELECTORDIALOG_H

#include "BaseWidget/IdaDialogFrame.h"
#include "InfomationGraph3DBasical.h"

QT_BEGIN_NAMESPACE
namespace Ui { class ThreeDSurfacePlotSelectorDialog; };
QT_END_NAMESPACE
namespace pst
{
    class ThreeDSurfacePlotSelectorDialog : public IdaDialogFrame
    {
        Q_OBJECT

    public:
        ThreeDSurfacePlotSelectorDialog(QWidget* parent = nullptr);
        ~ThreeDSurfacePlotSelectorDialog();


        void setFreqencyList(const QList<double>& freqencyList);
        QList<double> getFreqencyList();

        void setValueList(const QList<QString>& valueList);
        QList<QString> getValueList();

        void setInfomationGraph3DBasical(InfomationGraph3DBasical* info);
        InfomationGraph3DBasical getInfomationGraph3DBasical();

        void setIsOpenNewWindow(bool isOpenNewWindow)
        {
            m_isOpenNewWindow = isOpenNewWindow;
        }
    signals:
        void signal_sendChosen3DSurfaceData(InfomationGraph3DBasical* info, int freIndex, int valueGroupIndex, bool isOpenNewWindow);

    public slots:
        void slot_sendChosen3DSurfaceData();
    private:
        Ui::ThreeDSurfacePlotSelectorDialog* ui;
        QList<double> m_freqencyList;
        QList<QString> m_valueGroupNameList;
        InfomationGraph3DBasical* m_info;
        bool m_isOpenNewWindow;
    };

}
#endif // PST_FARFIELDDATASELECTORDIALOG_H
